package cn.com.petrochina.lpm3.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import lombok.Data;

/**
 * 设计井别, 投产井别, 目前井别均在井况变更表中定义
 *
 * @TableName PC_DEV_WELL_ATTR
 */
@TableName(value = "PC_DEV_WELL_ATTR")
@Data
public class DevWellAttr implements Serializable {
    /**
     * 井ID，非限定唯一
     */
    @TableId(value = "WELL_ID")
    private String wellId;

    /**
     * 填组合单元ID，GROUP_TYPE='01'
     */
    @TableField(value = "PRODUCING_ZONE_ID")
    private String producingZoneId;

    /**
     * 填SITE_ID，P_SITE_TYPE=1
     */
    @TableField(value = "DEV_PATTTERN_ID")
    private String devPattternId;

    /**
     * 该字段已经被废除
     */
    @TableField(value = "STATION_ID")
    private String stationId;

    /**
     * 该字段已经被废除
     */
    @TableField(value = "WATER_STATION_NAME")
    private String waterStationName;

    /**
     * 判断是否参与计算总井数标识
     */
    @TableField(value = "WELL_NUM_NUM_FLAG")
    private String wellNumNumFlag;

    /**
     * 参照油品分类代码表
     */
    @TableField(value = "OIL_PRODUCTS_SORTING")
    private String oilProductsSorting;

    /**
     * 参照布井方式代码表
     */
    @TableField(value = "WELL_LOCATION_STYLE")
    private String wellLocationStyle;

    /**
     * 参照量油方式代码表
     */
    @TableField(value = "TEST_TYPE")
    private String testType;

    /**
     *
     */
    @TableField(value = "PROD_METER_CONS")
    private BigDecimal prodMeterCons;

    /**
     * 井号排列及显示序号
     */
    @TableField(value = "WELL_SEQU")
    private Integer wellSequ;

    /**
     * hh:mm。例如16：00或08：00
     */
    @TableField(value = "RPT_SETTLE_TIME")
    private String rptSettleTime;

    /**
     * 参照驱动分类代码表
     */
    @TableField(value = "DRIVING_TYPE_CODE")
    private String drivingTypeCode;

    /**
     * 参照报废原因代码表
     */
    @TableField(value = "ABANDON_REASON")
    private String abandonReason;

    /**
     * 参照报废方式代码表
     */
    @TableField(value = "ABANDON_TYPE")
    private String abandonType;

    /**
     * 参见代码表" PC_PK_STIM_TYPE_ON_PRODUCTION"
     */
    @TableField(value = "START_PROD_STITUM")
    private String startProdStitum;

    /**
     * 参考采出方式代码表
     */
    @TableField(value = "OIL_PRODUCTION_METHOD")
    private String oilProductionMethod;

    /**
     * 参考注入方式代码表
     */
    @TableField(value = "INJECTION_METHOD")
    private String injectionMethod;

    /**
     * 该字段已经被废除
     */
    @TableField(value = "THERMAL_RECOVERY_MARK")
    private String thermalRecoveryMark;

    /**
     * gukeming 稠油 20070330
     */
    @TableField(value = "HEAT_INSULATION_TYPE")
    private String heatInsulationType;

    /**
     * 该字段已经被废除
     */
    @TableField(value = "JOB_SYSTEM")
    private String jobSystem;

    /**
     * 200703大庆确认字段
     */
    @TableField(value = "PROD_DATE")
    private Date prodDate;

    /**
     * 该字段已经被废除
     */
    @TableField(value = "OIL_GAS_RATIO")
    private BigDecimal oilGasRatio;

    /**
     * 允许的井口压力,用于分层水井
     */
    @TableField(value = "ALLOW_PRES")
    private BigDecimal allowPres;

    /**
     *
     */
    @TableField(value = "ALLOCATOR_ID")
    private String allocatorId;

    /**
     *
     */
    @TableField(value = "IS_GAS_STORAGE")
    private String isGasStorage;

    /**
     *
     */
    @TableField(value = "GAS_OIL_RATIO")
    private BigDecimal gasOilRatio;

    /**
     * 水气比塔里木需求
     */
    @TableField(value = "WAT_GAS_RATIO")
    private BigDecimal watGasRatio;

    /**
     * 定产井记录为1 , 非定产井记录为2
     */
    @TableField(value = "CALIBRATE_WELL")
    private String calibrateWell;

    /**
     * 2007-11-15 sun yufa added 西南需求,是否计算生产时间，如果为0，表示是；如果为1，表示不是
     */
    @TableField(value = "SKV_FLAG")
    private String skvFlag;

    /**
     * 工业气井标志:0为非工业气井；1为工业气井；空为其它
     */
    @TableField(value = "INDUSTRY_GAS_WELL_FLAG")
    private String industryGasWellFlag;

    /**
     * 管理业务分类代码  PC_PK_WEL_BUSINESS_CLASS
     */
    @TableField(value = "BUSINESS_CLASS_CODE")
    private String businessClassCode;

    /**
     * 串联井组ID，用于吉林串联井量油方式 added by sunxh 20071126
     */
    @TableField(value = "SERIES_ID")
    private String seriesId;

    /**
     *
     */
    @TableField(value = "MAIN_WELL_ID")
    private String mainWellId;

    /**
     * 标识伴生气的计算方式。10 直接录入；20 通过油气比计算；31 腰轮和旋进旋出流量计；32 LUXZ和TDS流量计；33 玻璃管量油；34 智能流量计
     */
    @TableField(value = "GAS_CAL_METHOD")
    private String gasCalMethod;

    /**
     * 见水井标志，1：见水井。
     */
    @TableField(value = "METWATER_FLAG")
    private String metwaterFlag;

    /**
     * 标示井是否分层计量，是为1,否为0。
     */
    @TableField(value = "SEPARATE_LAYER_COLLECT_MARKER")
    private String separateLayerCollectMarker;

    /**
     * 三采标志，是为1，否则为0
     */
    @TableField(value = "TOR_MODE")
    private String torMode;

    /**
     * 最后更新日期
     */
    @TableField(value = "UPDATE_DATE")
    private Date updateDate;

    /**
     * 最后更新用户ID
     */
    @TableField(value = "UPDATE_USER_ID")
    private String updateUserId;

    /**
     * 创建日期
     */
    @TableField(value = "CREATE_DATE")
    private Date createDate;

    /**
     * 创建用户ID
     */
    @TableField(value = "CREATE_USER_ID")
    private String createUserId;

    /**
     * 原始地层温度
     */
    @TableField(value = "ORIGINAL_FORMATION_TEMPRATURE")
    private BigDecimal originalFormationTemprature;

    /**
     * 原始饱和压力
     */
    @TableField(value = "ORIGINAL_SATURATION_PRESSURE")
    private BigDecimal originalSaturationPressure;

    /**
     * 原始地层压力
     */
    @TableField(value = "ORIGINAL_FORMATION_PRESSURE")
    private BigDecimal originalFormationPressure;

    /**
     * 油层中部深度
     */
    @TableField(value = "MID_POINT_PAYZONE")
    private BigDecimal midPointPayzone;

    /**
     *
     */
    @TableField(value = "BREAK_PRESSURE")
    private BigDecimal breakPressure;

    /**
     * 参照"大庆油田井网管理"代码表DQ_PK_ PATTTERN_MANAGED_LIST
     */
    @TableField(value = "PATTTERN_MANAGED")
    private String pattternManaged;

    /**
     * 参照"西南油田井生产状态代码表XN_PK_WELL_DEV_STATUS_LIST"
     */
    @TableField(value = "WELL_DEV_STATUS")
    private String wellDevStatus;

    /**
     * 其值选自"开发试验管理数据 DEVE_TEST_MANAGEMENT_DATA"的"TEST_ID"
     */
    @TableField(value = "TEST_ID")
    private String testId;

    /**
     * 投资日期
     */
    @TableField(value = "INVEST_DATE")
    private Date investDate;

    /**
     * 参见代码表"PC_PK_INTER_INJ_PRO_METHOD"（不在开发井基础信息页面显示）
     */
    @TableField(value = "INTER_INJ_PRO_JOB_METHOD")
    private String interInjProJobMethod;

    /**
     * 受让产量分成结果的单元（虚拟），引用表CD_PROJECT_SOURCE的字段PROJECT_ID
     */
    @TableField(value = "ASSIGN_PROJECT")
    private String assignProject;

    /**
     * 用来计算“产量分成目标”受让的产量
     */
    @TableField(value = "ASSIGN_RATIO")
    private BigDecimal assignRatio;

    /**
     *
     */
    @TableField(value = "GAS_WELL_DEV_STATUS")
    private String gasWellDevStatus;

    /**
     * 参见代码表"气井评价结果代码PC_PK_GAS_WELL_EVAL_RESULT"
     */
    @TableField(value = "EVALUATION_RESULT_MARK")
    private String evaluationResultMark;

    /**
     * 参照油田开发技术分类 PC_PK_FIELD_DEVEL_TECH，所有油井需要维护该字段
     */
    @TableField(value = "DEVEL_TECH_CODE")
    private String develTechCode;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}